草庐IT

c++ - yaml-cpp 0.5.1 的可选 key

全部标签

python - 如何在 Windows 上从 C 中的 CreateProcess 执行 Python 脚本?

我已经设法让C代码在C代码中使用PIPES在Unix上愉快地调用Python脚本。我现在需要在Windows上执行相同的操作。本质上,我想在Windows上用不同的脚本语言(如Python/Lua等)编写脚本,并能够使用STDIN/STDOUT等执行它们。我一直在查看“CreateProcess”调用:http://msdn.microsoft.com/en-us/library/ms682425(VS.85).aspx虽然我可以让它与“用C编写的child”一起工作,但我无法让它调用Python脚本。下面是我的windows盒子上的“parent/发件人代码”:#include#in

c - 测试文件/目录是否只读

好吧,我是一个C新手。如何在Windows上测试文件是否为只读。我试图通过GetFileAttributes函数获得一些东西,但无济于事。给定文件路径,测试文件是否为只读的正确方法是什么?编辑:所以我仍然坚持这一点。我想检查用户是否有权在C:\ProgramFiles中添加和编辑文件...但我似乎无法获得任何建议。当我使用!(GetFileAtrributes(path)&FILE_ATTRIBUTES_READONLY)时,它表示该目录不是只读的。然后我尝试编写一个文件并测试它是否有效:strcat(path,"\\testFile000");FILE*test=0;test=fop

c - 测量上下文切换时间 C (Windows)

我需要实现一种方法来测量Windows中线程间上下文切换的时间和CPU周期。这是我的代码#include#include#includeLARGE_INTEGERinitialTimeStamp,finalTimeStamp,freq;DWORDThreadProc(LPVOIDlpdwThreadParam){SwitchToThread();return0;}intmain(){intresult;HANDLEhThread;QueryPerformanceFrequency(&freq);hThread=CreateThread(NULL,0,(LPTHREAD_START_RO

c++ - 将 ListView 控件滚动到特定项目

有没有办法滚动ListView(在报告View中)以便特定项目位于顶部?我能找到的最接近的是ListView_EnsureVisible,但它只能确保项目可见-它不允许精细控制项目出现的位置。 最佳答案 ListView_EnsureVisible()滚动ListView以使项目可见,但它通常(但不总是)将项目放置在ListView的中间附近。要让item出现在顶部,先调用ListView_EnsureVisible(),再调用ListView_GetTopIndex()确定最上面可见的item,然后用ListView_GetIte

Windows XP : change background color programatically (how to redraw Desktop after changing registry key? )

如何以编程方式更改WindowsXP上的背景/墙纸颜色?我正在更改注册表项HKEY_CURRENT_USER\ControlPanel\Colors\Background(使用regedit),但更改该注册表项不会更改背景颜色,尽管当我从“显示属性”窗口更改颜色时该注册表项已更改。知道为什么吗?编辑:啊,如果我更改key并重新启动,效果就会改变。那么如何在不重新启动的情况下进行更改呢? 最佳答案 我认为您需要调用WindowsAPI函数SetSysColors. 关于WindowsXP:

c - 如何在 Windows 上安装 JudyArrays(C 库)

我知道这听起来可能是个很愚蠢的问题,但我在安装下载的库方面经验不足...无论如何,我从sourceforge下载了JudyArrays的源代码(对于那些不知道它的人来说,这是一个用于256-trie的C库),安装说明引用了make命令。我试着下载thisutility,但我无法让它工作。哪个是正确的目标makefile?我设法得到的是:"..path\Makefile.in":15:***missingseparator.Stop.我尝试使用谷歌搜索寻求帮助,但没有找到任何东西,要么是我使用错误的查询字符串进行搜索,要么我是整个星球上唯一无法安装它的笨蛋...有什么帮助吗?有没有更简单

C# 将 key 发送到其他应用程序到特定的文本字段

我需要使用C#将其他应用程序的key发送到其他应用程序中的特定文本字段。这可能吗?如果是,谁能给我示例代码? 最佳答案 SendKeys仅将击键组合发送到事件窗口。因此,如果您的C#应用程序恰好在正确的时间调用了SendKeys函数,那么当用户聚焦其他应用程序的文本框时,一切都会正常进行。当然,问题在于现实世界很少如此完美。您不知道用户何时会聚焦其他应用程序,当然也不知道他们是否单击了文本框控件。您也无法让用户告诉您的C#应用程序何时发送文本(例如单击按钮),因为要单击按钮,您的应用程序必须具有前景焦点,因此不是您要接收键盘输入的应

c++ - 使用 GetModuleHandle 获取指向 IMAGE_DOS_HEADER 的指针?

一旦我的进程加载到内存中,我就试图获取它的图像库。据我了解,您可以调用GetModuleHandle来获取图像库。我的问题是,返回的句柄是否实质上指向IMAGE_DOS_HEADER结构,以便您可以执行以下操作:PIMAGE_DOS_HEADERDosHeader;DosHeader=(PIMAGE_DOS_HEADER)GetModuleHandle(NULL);如果这不正确,您还可以使用什么其他方法? 最佳答案 这是正确的,但如果您想要dll的模块句柄,则需要指定其路径。否则,您将获得进程exe的句柄。您还应该首先检查返回的HM

c - 为什么这个 MSVC API 是这样定义的?

errno_t_dupenv_s(char**buffer,size_t*sizeInBytes,constchar*varname);我有几个问题:为什么需要指向指针(**)的指针而不是指针(*)?为什么sizeInBytes是必需的,strlen(buffer)不可用吗? 最佳答案 msvc下任何以_s为后缀的函数都是安全函数,这意味着它不会对传递的数据的完整性做出任何假设。正是出于这个原因,字符串的长度是必需的,因为您不能假设它以null终止或根本终止(您可能也只想要一半的字符串,但这是副作用)。安全函数都返回错误代码,这样就

c - FIFO 不会在读取时阻塞

为什么下面的程序不会在第二次read调用时阻塞?intpid=fork();if(pid){intfifo=open("testfifo",O_RDWR);charbuf[20];while(1){read(fifo,buf,10);puts(buf);}}else{intfifo=open("testfifo",O_WRONLY);write(fifo,"teststring",10);close(fifo);}return0;第二个read调用继续返回0,即使fifo变空并且它应该阻塞read调用。我错过了什么吗?操作系统是Windows,管道是用mknodtestfifop创建的